1 using UnityEngine;
2
3 namespace
ProceduralToolkit.Examples
4 {
5     
public static class Stretchers
6     {
7         
public static MeshDraft XStretchers(Vector3[] legCenters, float legWidth, float legHeight)
8         {
9             
var draft = new MeshDraft();
10             legWidth = RandomE.Range(legWidth/
2, legWidth*3/4, 2);
11             draft.Add(ChairGenerator.BeamDraft(legCenters[
0], legCenters[2], legWidth));
12             draft.Add(ChairGenerator.BeamDraft(legCenters[
1], legCenters[3], legWidth));
13             draft.Move(Vector3.up*RandomE.Range(legHeight/
4, legHeight/2, 2));
14             
return draft;
15         }
16
17         
public static MeshDraft HStretchers(Vector3[] legCenters, float legWidth, float legHeight)
18         {
19             
var draft = new MeshDraft();
20             legWidth = RandomE.Range(legWidth/
2, legWidth, 3);
21             draft.Add(ChairGenerator.BeamDraft(legCenters[
0], legCenters[3], legWidth));
22             draft.Add(ChairGenerator.BeamDraft(legCenters[
1], legCenters[2], legWidth));
23             Vector3 leftCenter = (legCenters[
3] + legCenters[0])/2;
24             Vector3 rightCenter = (legCenters[
2] + legCenters[1])/2;
25             draft.Add(ChairGenerator.BeamDraft(leftCenter, rightCenter, legWidth));
26             draft.Move(Vector3.up*RandomE.Range(legHeight/
4, legHeight*3/4, 3));
27             
return draft;
28         }
29
30         
public static MeshDraft BoxStretchers(Vector3[] legCenters, float legWidth, float legHeight)
31         {
32             
var draft = new MeshDraft();
33             legWidth = RandomE.Range(legWidth/
2, legWidth, 3);
34             MeshDraft stretcher0 = ChairGenerator.BeamDraft(legCenters[
0], legCenters[1], legWidth);
35             stretcher0.Add(ChairGenerator.BeamDraft(legCenters[
2], legCenters[3], legWidth));
36             stretcher0.Move(Vector3.up*RandomE.Range(legHeight/
4, legHeight*3/4, 3));
37             MeshDraft stretcher1 = ChairGenerator.BeamDraft(legCenters[
0], legCenters[3], legWidth);
38             stretcher1.Add(ChairGenerator.BeamDraft(legCenters[
1], legCenters[2], legWidth));
39             stretcher1.Move(Vector3.up*RandomE.Range(legHeight/
4, legHeight*3/4, 3));
40             draft.Add(stretcher0);
41             draft.Add(stretcher1);
42             
return draft;
43         }
44     }
45 }


Gõ tìm kiếm nhanh...